CREATE FUNCTION dbo.Fn_Siguiente_Codigo ( @Tabla varchar(20) )
RETURNS smallint
AS
BEGIN
	DECLARE @Resultado smallint
	
	IF @Tabla = 'Anomalias'
		SELECT @Resultado =  MAX( Anomalia ) + 1 FROM Anomalias 
	
	IF @Tabla = 'Area'
		SELECT @Resultado =  MAX( Area ) + 1 FROM Area 
	
	IF @Tabla = 'Causas_Interrup_Prescripcion'
		SELECT @Resultado =  MAX( Causa_Interrup_Prescripcion ) + 1 FROM Causas_Interrup_Prescripcion 
	
	IF @Tabla = 'Delitos'
		--SELECT @Resultado =  MAX( Causa_Interrup_Prescripcion ) + 1 FROM Delitos 
		SELECT @Resultado = @Resultado
	
	IF @Tabla = 'EstadoProcesal'
		SELECT @Resultado =  MAX( EstadoProcesal ) + 1 FROM EstadoProcesal 
	
	IF @Tabla = 'InstitucionInvolucrada'
		SELECT @Resultado =  MAX( InstitucionInvolucrada ) + 1 FROM InstitucionInvolucrada 
	
	IF @Tabla = 'Juzgados'
		SELECT @Resultado =  MAX( Juzgado ) + 1 FROM Juzgados 
	
	IF @Tabla = 'MateriaTipoAsunto'
		--SELECT @Resultado =  MAX( Juzgado ) + 1 FROM MateriaTipoAsunto 
		SELECT @Resultado = @Resultado
	
	IF @Tabla = 'Participacion_Estado'
		SELECT @Resultado =  MAX( Participacion_Estado ) + 1 FROM Participacion_Estado 
	
	IF @Tabla = 'Procurador'
		SELECT @Resultado =  MAX( Procurador ) + 1 FROM Procurador 
	
	IF @Tabla = 'Terrenos_Afectados'
		SELECT @Resultado =  MAX( Terreno_Afectado ) + 1 FROM Terrenos_Afectados 
	
	IF @Tabla = 'Tipos_Expediente'
		SELECT @Resultado =  MAX( Tipo_Expediente ) + 1 FROM Tipos_Expediente 
	
	IF @Tabla = 'Tipos_Moneda'
		SELECT @Resultado =  MAX( Tipo_Moneda ) + 1 FROM Tipos_Moneda 
	
	IF @Tabla = 'Tipos_Negociacion'
		SELECT @Resultado =  MAX( Tipo_Negociacion ) + 1 FROM Tipos_Negociacion 
	
	IF @Resultado IS NULL
		SET @Resultado = 1
		
	RETURN @Resultado 
END